home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1996 #14 / Monster Media No. 14 (April 1996) (Monster Media, Inc.).ISO / prog_d / qrep097a.zip / MDREP.PAS < prev    next >
Pascal/Delphi Source File  |  1996-01-13  |  4KB  |  135 lines

  1. unit Mdrep;
  2.  
  3. interface
  4.  
  5. uses
  6.   SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
  7.   Forms, Dialogs, StdCtrls, Quickrep, DB, DBTables, ExtCtrls, Buttons, Spin;
  8.  
  9. type
  10.   TMDForm = class(TForm)
  11.     MDRep: TQuickReport;
  12.     Title: TQRBand;
  13.     CustomerHeading: TQRBand;
  14.     QRDBText1: TQRDBText;
  15.     QRLabel3: TQRLabel;
  16.     QRLabel4: TQRLabel;
  17.     QRDBText3: TQRDBText;
  18.     QRDBText4: TQRDBText;
  19.     QRLabel5: TQRLabel;
  20.     QRDBText5: TQRDBText;
  21.     CustomerFooter: TQRBand;
  22.     QRDBCalc1: TQRDBCalc;
  23.     QRLabel7: TQRLabel;
  24.     PageFooter: TQRBand;
  25.     QRLabel8: TQRLabel;
  26.     QRSysData1: TQRSysData;
  27.     Summary: TQRBand;
  28.     QRSysData2: TQRSysData;
  29.     OrderDetail: TQRBand;
  30.     QRDBText2: TQRDBText;
  31.     QRDBText7: TQRDBText;
  32.     QRDBCalc2: TQRDBCalc;
  33.     QRLabel6: TQRLabel;
  34.     CustomerTable: TTable;
  35.     OrdersTable: TTable;
  36.     CustomerDS: TDataSource;
  37.     OrderDS: TDataSource;
  38.     OrdersTableOrderNo: TFloatField;
  39.     OrdersTableSaleDate: TDateTimeField;
  40.     OrdersTableItemsTotal: TCurrencyField;
  41.     OrdersTableTaxRate: TFloatField;
  42.     OrdersTableFreight: TCurrencyField;
  43.     OrdersTableAmountPaid: TCurrencyField;
  44.     CustomerTableCustNo: TFloatField;
  45.     CustomerTableCompany: TStringField;
  46.     CustomerTablePhone: TStringField;
  47.     CustomerTableFAX: TStringField;
  48.     CustomerTableContact: TStringField;
  49.     OrdersTableCustNo: TFloatField;
  50.     QRLabel15: TQRLabel;
  51.     Image1: TImage;
  52.     QRLabel1: TQRLabel;
  53.     QRLabel16: TQRLabel;
  54.     QRDetailLink1: TQRDetailLink;
  55.     QRDetailLink2: TQRDetailLink;
  56.     ItemsTable: TTable;
  57.     ItemsDS: TDataSource;
  58.     ItemsTableOrderNo: TFloatField;
  59.     ItemsTableItemNo: TFloatField;
  60.     ItemsTablePartNo: TFloatField;
  61.     ItemsTableQty: TIntegerField;
  62.     ItemsTableDiscount: TFloatField;
  63.     ItemsDetail: TQRBand;
  64.     QRDBText8: TQRDBText;
  65.     PartsTable: TTable;
  66.     PartsDS: TDataSource;
  67.     PartsTablePartNo: TFloatField;
  68.     PartsTableVendorNo: TFloatField;
  69.     PartsTableDescription: TStringField;
  70.     PartsTableOnHand: TFloatField;
  71.     PartsTableOnOrder: TFloatField;
  72.     PartsTableCost: TCurrencyField;
  73.     PartsTableListPrice: TCurrencyField;
  74.     QRLabel2: TQRLabel;
  75.     QRLabel9: TQRLabel;
  76.     QRDBText6: TQRDBText;
  77.     QRDBText9: TQRDBText;
  78.     QRDBText10: TQRDBText;
  79.     ItemsTableTotal: TCurrencyField;
  80.     ItemsTableTotalAmount: TCurrencyField;
  81.     QRDBText11: TQRDBText;
  82.     QRDBText12: TQRDBText;
  83.     QRLabel10: TQRLabel;
  84.     QRLabel11: TQRLabel;
  85.     QRLabel12: TQRLabel;
  86.     QRLabel13: TQRLabel;
  87.     QRLabel14: TQRLabel;
  88.     QRShape1: TQRShape;
  89.     QRShape2: TQRShape;
  90.     QRShape3: TQRShape;
  91.     QRShape4: TQRShape;
  92.     QRShape5: TQRShape;
  93.     OrderFooter: TQRBand;
  94.     QRLabel17: TQRLabel;
  95.     QRShape6: TQRShape;
  96.     QRDBText13: TQRDBText;
  97.     QRDBCalc3: TQRDBCalc;
  98.     procedure ItemsTableCalcFields(DataSet: TDataset);
  99.     procedure ItemsDetailBeforePrint(var PrintBand: Boolean);
  100.     procedure ItemsDetailAfterPrint(BandPrinted: Boolean);
  101.   private
  102.     { Private declarations }
  103.   public
  104.     { Public declarations }
  105.   end;
  106.  
  107. var
  108.   MDForm: TMDForm;
  109.  
  110. implementation
  111.  
  112. {$R *.DFM}
  113.  
  114. procedure TMDForm.ItemsTableCalcFields(DataSet: TDataset);
  115. begin
  116.    {ItemsTableTotalAmount.Value:=ItemsTableQty.AsFloat*PartsTableListPrice.AsFloat;}
  117.  
  118.    { Due to some strange bug the last detail table isn't always updated right so
  119.      we moved this to the BeforePrint event of the ItemsDetailBand}
  120. end;
  121.  
  122. procedure TMDForm.ItemsDetailBeforePrint(var PrintBand: Boolean);
  123. begin
  124.    { This should really go into the ItemsTableOncalcFields event handler but that
  125.      doesn't work correctly, by some strange reason}
  126.    ItemsTable.Edit;
  127.    ItemsTableTotalAmount.Value:=ItemsTableQty.AsFloat*PartsTableListPrice.AsFloat;
  128. end;
  129. procedure TMDForm.ItemsDetailAfterPrint(BandPrinted: Boolean);
  130. begin
  131.     ItemsTable.Cancel;
  132. end;
  133.  
  134. end.
  135.